package com.sys.SysFeedingRecords.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.sys.common.annotation.Excel;
import com.sys.common.core.domain.BaseEntity;

/**
 * 投喂记录对象 sys_feeding_records
 * 
 * @author sys
 * @date 2025-09-04
 */
@Data
public class SysFeedingRecords extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 投喂记录ID */
    private Integer id;

    /** 桶ID */
    @Excel(name = "桶ID")
    private Long tankId;

    /** 饲料类型 */
    @Excel(name = "饲料类型")
    private String feedType;

    /** 投喂量 */
    @Excel(name = "投喂量")
    private BigDecimal amount;

    /** 残饵率 */
    @Excel(name = "残饵率")
    private BigDecimal residueRate;

    /** 投喂时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "投喂时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date feedTime;

    /** 上传图片URL（如投喂过程、残饵照片） */
    @Excel(name = "上传图片URL", readConverterExp = "如=投喂过程、残饵照片")
    private String photoUrl;

    /** 生长记录id */
    @Excel(name = "生长记录id")
    private Long growthRecordsId;

    /** 桶编号 */
    @Excel(name = "桶编号")
    private String tankCode;

    /** 物资id */
    @Excel(name = "物资id")
    private Long inventoryId;

    /** 物资名称 */
    @Excel(name = "物资名称")
    private String materialName;

    /** 类型名称 */
    @Excel(name = "类型名称")
    private String category;

    /** 物资编码 */
    @Excel(name = "物资编码")
    private String materialCode;

    /** 批次号 */
    @Excel(name = "批次号")
    private String batchNumber;

    /** 供应商 */
    @Excel(name = "供应商")
    private String supplier;


    /** 有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expiryDate;

    /** 开始日期 */
    @Excel(name = "开始日期")
    private String beginFeedTime;
    /** 结束日期 */
    @Excel(name = "结束日期")
    private String endFeedTime;

    /** 损耗量 */
    @Excel(name = "损耗量")
    private String quantity;

//    public String getTankCode() {
//        return tankCode;
//    }
//
//    public void setTankCode(String tankCode) {
//        this.tankCode = tankCode;
//    }
//
//    public Integer getId() {
//        return id;
//    }
//
//    public void setId(Integer id) {
//        this.id = id;
//    }
//
//    public void setTankId(Long tankId)
//    {
//        this.tankId = tankId;
//    }
//
//    public Long getTankId()
//    {
//        return tankId;
//    }
//
//    public void setFeedType(String feedType)
//    {
//        this.feedType = feedType;
//    }
//
//    public String getFeedType()
//    {
//        return feedType;
//    }
//
//    public void setAmount(BigDecimal amount)
//    {
//        this.amount = amount;
//    }
//
//    public BigDecimal getAmount()
//    {
//        return amount;
//    }
//
//    public void setResidueRate(BigDecimal residueRate)
//    {
//        this.residueRate = residueRate;
//    }
//
//    public BigDecimal getResidueRate()
//    {
//        return residueRate;
//    }
//
//    public void setFeedTime(Date feedTime)
//    {
//        this.feedTime = feedTime;
//    }
//
//    public Date getFeedTime()
//    {
//        return feedTime;
//    }
//
//    public void setPhotoUrl(String photoUrl)
//    {
//        this.photoUrl = photoUrl;
//    }
//
//    public String getPhotoUrl()
//    {
//        return photoUrl;
//    }
//
//    public void setGrowthRecordsId(Long growthRecordsId)
//    {
//        this.growthRecordsId = growthRecordsId;
//    }
//
//    public Long getGrowthRecordsId()
//    {
//        return growthRecordsId;
//    }
//
//    @Override
//    public String toString() {
//        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
//            .append("id", getId())
//            .append("tankId", getTankId())
//            .append("feedType", getFeedType())
//            .append("amount", getAmount())
//            .append("residueRate", getResidueRate())
//            .append("feedTime", getFeedTime())
//            .append("createBy", getCreateBy())
//            .append("createTime", getCreateTime())
//            .append("updateBy", getUpdateBy())
//            .append("updateTime", getUpdateTime())
//            .append("remark", getRemark())
//            .append("photoUrl", getPhotoUrl())
//            .append("growthRecordsId", getGrowthRecordsId())
//            .toString();
//    }
}
